package Graficas;

import java.awt.Graphics;
import java.util.LinkedList;

import Logica.Celdas.Celda;

public class AnimacionRomperLadrillo extends Thread implements Pintable_Animable {
	/* ################## ATRIBUTOS DE INSTANCIA ######################## */
	protected SpriteMovements ani;
	protected Celda c;
	protected Sprite spriteAPintar;

	/* ################## CONSTRUCTORES ######################## */

	public AnimacionRomperLadrillo(Celda c, SpriteMovements ani, int x, int y) {
		super("AnimacionRomperLadrillo");
		this.ani = ani;
		this.c = c;
		
	}

	/* ################## COMANDOS ######################## */
	/**
	 * Inicio la ejecucion de la animacion.
	 */
	public void run() {
		
		c.setInAnimation(true);
		ani.imgActual=3;
		for (int i=0;i<ani.cantSpritesDir;i++){
			
			spriteAPintar = ani.getSprite(1);
			try {
				sleep(100);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		c.getInteligencia().getControlColisiones().getMapaVisible().getMapa().quitarCelda(c);
	}

	@Override
	public void pintar(Graphics g, Sprite sprite, int x, int y) {
		if (spriteAPintar != null)
			spriteAPintar.Draw(g, x ,y);
	}

	@Override
	public boolean isAliveAnimation() {
		return this.isAlive();
	}

	@Override
	public Celda getCelda() {
		return c;
	}
}